<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <link rel="stylesheet" href="http://www.petercorke.com/RVC/common/toolboxhelp.css">
    <title>M-File Help: PrismaticMDH</title>
  </head>
  <body>
  <table border="0" cellspacing="0" width="100%">
    <tr class="subheader">
      <td class="headertitle">M-File Help: PrismaticMDH</td>
      <td class="subheader-left"><a href="matlab:open PrismaticMDH">View code for PrismaticMDH</a></td>
    </tr>
  </table>
<h1>PrismaticMDH</h1><p><span class="helptopic">Robot manipulator prismatic link class for MDH convention</span></p><p>
A subclass of the Link class for a prismatic joint defined using modified
Denavit-Hartenberg parameters: holds all information related to a robot
link such as kinematics parameters, rigid-body inertial parameters, motor
and transmission parameters.

</p>
<h2>Constructors</h2>
<table class="list">
  <tr><td style="white-space: nowrap;" class="col1"> PrismaticMDH</td> <td>construct a prismatic joint+link using modified DH</td></tr>
</table>
<h2>Information/display methods</h2>
<table class="list">
  <tr><td style="white-space: nowrap;" class="col1"> display</td> <td>print the link parameters in human readable form</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> dyn</td> <td>display link dynamic parameters</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> type</td> <td>joint type: 'R' or 'P'</td></tr>
</table>
<h2>Conversion methods</h2>
<table class="list">
  <tr><td style="white-space: nowrap;" class="col1"> char</td> <td>convert to string</td></tr>
</table>
<h2>Operation methods</h2>
<table class="list">
  <tr><td style="white-space: nowrap;" class="col1"> A </td> <td>link transform matrix</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> friction</td> <td>friction force</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> nofriction</td> <td>Link object with friction parameters set to zero%</td></tr>
</table>
<h2>Testing methods</h2>
<table class="list">
  <tr><td style="white-space: nowrap;" class="col1"> islimit</td> <td>test if joint exceeds soft limit</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> isrevolute</td> <td>test if joint is revolute</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> isprismatic</td> <td>test if joint is prismatic</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> issym</td> <td>test if joint+link has symbolic parameters</td></tr>
</table>
<h2>Overloaded operators</h2>
<table class="list">
  <tr><td style="white-space: nowrap;" class="col1"> + </td> <td>concatenate links, result is a SerialLink object</td></tr>
</table>
<h2>Properties (read/write)</h2>
<table class="list">
  <tr><td style="white-space: nowrap;" class="col1"> theta</td> <td>kinematic: joint angle</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> d </td> <td>kinematic: link offset</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> a </td> <td>kinematic: link length</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> alpha</td> <td>kinematic: link twist</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> jointtype</td> <td>kinematic: 'R' if revolute, 'P' if prismatic</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> mdh</td> <td>kinematic: 0 if standard D&H, else 1</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> offset</td> <td>kinematic: joint variable offset</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> qlim</td> <td>kinematic: joint variable limits [min max]</td></tr>
  <tr></tr>
  <tr></tr>  <tr><td style="white-space: nowrap;" class="col1"> m </td> <td>dynamic: link mass</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> r </td> <td>dynamic: link COG wrt link coordinate frame 3x1</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> I </td> <td>dynamic: link inertia matrix, symmetric 3x3, about link COG.</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> B </td> <td>dynamic: link viscous friction (motor referred)</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> Tc</td> <td>dynamic: link Coulomb friction</td></tr>
  <tr></tr>
  <tr></tr>  <tr><td style="white-space: nowrap;" class="col1"> G </td> <td>actuator: gear ratio</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> Jm</td> <td>actuator: motor inertia (motor referred)</td></tr>
</table>
<h2>Notes</h2>
<ul>
  <li>Methods inherited from the Link superclass.</li>
  <li>This is reference class object</li>
  <li>Link class objects can be used in vectors and arrays</li>
  <li>Modified Denavit-Hartenberg parameters are used</li>
</ul>
<h2>References</h2>
<ul>
  <li>Robotics, Vision & Control, P. Corke, Springer 2011, Chap 7.</li>
</ul>
<h2>See also</h2>
<p>
<a href="Link.html">Link</a>, <a href="Prismatic.html">Prismatic</a>, <a href="RevoluteMDH.html">RevoluteMDH</a>, <a href="SerialLink.html">SerialLink</a></p>
<hr>
<a name="PrismaticMDH"><h1>PrismaticMDH.PrismaticMDH</h1></a>
<p><span class="helptopic">Create prismatic robot link object using MDH notaton</span></p><p>
<strong>L</strong> = <span style="color:red">PrismaticMDH</span>(<strong>options</strong>) is a prismatic link object with the kinematic and dynamic
parameters specified by the key/value pairs using the modified
Denavit-Hartenberg conventions.

</p>
<h2>Options</h2>
<table class="list">
  <tr><td style="white-space: nowrap;" class="col1">'theta', TH</td> <td>joint angle</td></tr>
  <tr><td style="white-space: nowrap;" class="col1">'a', A</td> <td>joint offset (default 0)</td></tr>
  <tr><td style="white-space: nowrap;" class="col1">'alpha', A</td> <td>joint twist (default 0)</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> 'standard'</td> <td>defined using standard D&H parameters (default).</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> 'modified'</td> <td>defined using modified D&H parameters.</td></tr>
  <tr><td style="white-space: nowrap;" class="col1">'offset', O</td> <td>joint variable offset (default 0)</td></tr>
  <tr><td style="white-space: nowrap;" class="col1">'qlim', L</td> <td>joint limit (default [])</td></tr>
  <tr><td style="white-space: nowrap;" class="col1">'I', I</td> <td>link inertia matrix (3x1, 6x1 or 3x3)</td></tr>
  <tr><td style="white-space: nowrap;" class="col1">'r', R</td> <td>link centre of gravity (3x1)</td></tr>
  <tr><td style="white-space: nowrap;" class="col1">'m', M</td> <td>link mass (1x1)</td></tr>
  <tr><td style="white-space: nowrap;" class="col1">'G', G</td> <td>motor gear ratio (default 1)</td></tr>
  <tr><td style="white-space: nowrap;" class="col1">'B', B</td> <td>joint friction, motor referenced (default 0)</td></tr>
  <tr><td style="white-space: nowrap;" class="col1">'Jm', J</td> <td>motor inertia, motor referenced (default 0)</td></tr>
  <tr><td style="white-space: nowrap;" class="col1">'Tc', T</td> <td>Coulomb friction, motor referenced (1x1 or 2x1), (default [0 0])</td></tr>
  <tr><td style="white-space: nowrap;" class="col1"> 'sym'</td> <td>consider all parameter values as symbolic not numeric</td></tr>
</table>
<h2>Notes</h2>
<ul>
  <li>The joint extension, d, is provided as an argument to the A() method.</li>
  <li>The link inertia matrix (3x3) is symmetric and can be specified by giving
a 3x3 matrix, the diagonal elements [Ixx Iyy Izz], or the moments and products
of inertia [Ixx Iyy Izz Ixy Iyz Ixz].</li>
  <li>All friction quantities are referenced to the motor not the load.</li>
  <li>Gear ratio is used only to convert motor referenced quantities such as
friction and interia to the link frame.</li>
</ul>
<h2>See also</h2>
<p>
<a href="Link.html">Link</a>, <a href="Prismatic.html">Prismatic</a>, <a href="RevoluteMDH.html">RevoluteMDH</a></p>
<hr>

<table border="0" width="100%" cellpadding="0" cellspacing="0">
  <tr class="subheader" valign="top"><td>&nbsp;</td></tr></table>
<p class="copy">&copy; 1990-2014 Peter Corke.</p>
</body></html>